There are a number of applications that employ brushless DC motors, and, in many of these applications (i.e., hard disc drives or HDDs), acoustic performance and power consumption of the brushless DC motor can be important. To achieve peak acoustic and power performance, the coil or applied current should be in phase with the back electromotive force (back-EMF) voltage. However, there are generally phase differences between the applied current and back-EMF voltage that are induced by the impedance of the brushless DC motor (which can vary based on conditions, such as temperature and motor speed). Traditionally, compensation for these phase differences was provided manually and on an as-needed basis. Conventional motor controllers would often provide a “commutation advance.” This commutation advance would usually be a digital value (i.e., 3 to 4 bits) that could be stored in a register. However, a limited number of bits generally does not provide much control over the system, and usually the end user would adjust the controller to “fit” the motor, which is a tedious and time consuming practice that drives up cost. Therefore, there is a need for an improved motor controller.
Some other conventional systems are: U.S. Pat. Nos. 6,498,446; 7,034,478; and U.S. Patent Pre-Grant Publ. No. 2002/0027423.